﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;

namespace IT_Pro.Forms
{
    public partial class frmCVLapPhieuYCSuaChua : DevExpress.XtraEditors.XtraForm
    {
        public frmCVLapPhieuYCSuaChua()
        {
            InitializeComponent();
            loaddulieuvaoform("");
        }


        public frmCVLapPhieuYCSuaChua(string nguoiyc)
        {
            InitializeComponent();
            loaddulieuvaoform(nguoiyc);

        }        

        private void loaddulieuvaoform(string nyc)
        {
            dateNgayLap.DateTime = DateTime.Now;
            DataTable dtnv = Class.NV_NhanVien.HienThiDsNhanVien();
            dtnv.Rows.InsertAt(dtnv.NewRow(), 0);
            dtnv.Rows[0]["MaNV"] = "";
            dtnv.Rows[0][1] = "[Chọn Nhân Viên]";

            cboNguoiYC.Properties.DataSource = dtnv;
            cboNguoiYC.Properties.DisplayMember = "TenNV";
            cboNguoiYC.Properties.ValueMember = "MaNV";
            cboNguoiYC.EditValue = dtnv.Rows[0][0].ToString();
            if (nyc.Length > 1)
            {
                cboNguoiYC.EditValue = nyc;
            }

            DataTable dtLoaiYCSC = Class.CV_GhiNhanYCSuaChua.LoadLoaiYeuCauSuaChua();
            cboLoaiYC.Properties.DataSource = dtLoaiYCSC;
            cboLoaiYC.Properties.DisplayMember = "TenLoaiSC";
            cboLoaiYC.Properties.ValueMember = "IDSC";
            cboLoaiYC.EditValue = dtLoaiYCSC.Rows[0][0].ToString();

            DataTable dtmaytinh = Class.MT_MayViTinh.HienthidsDL("MT_MayViTinh");
            dtmaytinh.Rows.InsertAt(dtmaytinh.NewRow(), 0);
            dtmaytinh.Rows[0]["MaMay"] = "[Chọn máy]";
            cboMayTinh.Properties.DataSource = dtmaytinh;
            cboMayTinh.Properties.DisplayMember = "MaMay";
            cboMayTinh.Properties.ValueMember = "MaMay";
            cboMayTinh.EditValue = loadMayTinh(nyc);
            cboMayTinh.Refresh();
            
        }      

        private void btnLapPhieu_Click(object sender, EventArgs e)
        {
            if (cboNguoiYC.EditValue.ToString().Length < 1)
            {
                MessageBox.Show("Chưa chọn nhân viên yêu cầu ");
                return;
            }
            if (txtNoiDung.Text.Length < 1)
            {
                MessageBox.Show("Chưa nhập nội dung yêu cầu sửa chữa");
                return;
            }
            if (cboLoaiYC.EditValue.ToString() == "1" && cboMayTinh.EditValue.ToString()=="[Chọn máy]")
            {
                MessageBox.Show("Chưa chọn máy tính");
                return;
            }

            Class.CV_GhiNhanYCSuaChua ycsc = new Class.CV_GhiNhanYCSuaChua();
            ycsc.NgYC = dateNgayLap.DateTime;
            ycsc.NguoiYC = cboNguoiYC.EditValue.ToString();
            ycsc.LoaiYC=int.Parse(cboLoaiYC.EditValue.ToString());
            ycsc.NoiDung = txtNoiDung.Text;
            if (ycsc.LoaiYC == 1)
            {
                ycsc.Mamay = cboMayTinh.EditValue.ToString();
            }
            else
            {
                ycsc.Mamay = "";
            }
            try
            {
                ycsc.LapPhieuYCSuaChua();
                MessageBox.Show(" Lập Phiếu yêu cầu sửa chữa thành công ");
                this.Close();
            }
            catch
            {
                MessageBox.Show("Lỗi. Lập Phiếu Thất bại");

            }

        }

        private void cboLoaiYC_EditValueChanged(object sender, EventArgs e)
        {
            if (cboLoaiYC.EditValue.ToString() == "1")
            {
                cboMayTinh.Visible = true;
                lblIdMay.Visible = true;
            }
            else
            {
                cboMayTinh.Visible = false;
                lblIdMay.Visible = false;
            }
        }


       private string loadMayTinh(string manv)
        {           
            DataTable dt = Class.CV_BanGiaoThietBi.HienThiDanhSachBanGiao(manv);
            if (dt.Rows.Count > 0)
            {
                return dt.Rows[0]["MaMay"].ToString();
            }
            else
            {

                return "[Chọn máy]";
            }
        }

       private void cboNguoiYC_EditValueChanged(object sender, EventArgs e)
       {
           cboMayTinh.EditValue = loadMayTinh(cboNguoiYC.EditValue.ToString());
       }
              
    }
}